// pages/home/home.js
import { getBannerListApi, getNavListApi, getLikeGoodsListApi, getRecommendGoodsListApi } from '../../api/home';

Page({

  /**
   * 页面的初始数据
   */
  data: {
    bannerList: [], // 轮播图数据
    navList: [], // 导航分类列表
    likeGoodsList: [], // 猜你喜欢商品列表
    recommendGoodsList: [], // 人气推荐商品列表
  },

  /**
   * 生命周期函数--监听页面显示
   */
  async onShow() {
    /*  
      发送请求注意事项：https://developers.weixin.qq.com/miniprogram/dev/framework/ability/network.html
        1. 小程序只可以跟指定的域名进行网络通信，域名需要在微信平台中配置
          域名必须是https协议，也必须是域名地址，不能是ip或localhost
          开发解决方案：微信开发调试工具 - 详情 - 本地设置 - 勾选 不校验合法域名
        2. 只要成功接收到服务器返回，无论 statusCode 是多少，都会进入 success 回调
          当触发 success 回调时，不一定是请求成功，需要进一步判断 statusCode
    */
    
    // wx.request({
    //   url: 'https://gmall-prod.atguigu.cn/mall-api/index/findBannerdsadsa',
    //   method: 'GET',
    //   success(res) {
    //     /*
    //       res:
    //         cookies 放cookie
    //         data 请求成功的数据（响应体数据）
    //           code 功能状态码
    //           data 成功的数据
    //           message 失败的原因
    //         errMsg 失败信息
    //         header 响应头
    //         statusCode 响应状态码
    //     */
    //     // 只要服务器有返回响应，就会进入success
    //     console.log('success', res);
    //     if (res.statusCode >= 200 && res.statusCode < 300) {
    //       // 请求成功
    //       if (res.data.code === 200) {
    //         // 功能成功
    //         console.log(res.data.data);
    //       } else {
    //         // 功能失败
    //         console.log('功能失败', res.data.message);
    //       }
    //     } else {
    //       // 请求失败
    //       console.log(res.data.error);
    //     }
    //   },
    //   fail(err) {
    //     // 服务器没有在规定内返回响应，就会进入fail
    //     console.log('fail', err.errMsg);
    //   }
    // })

    // try {
    //   const data = await request('/index/findBanner');
    //   console.log(data);
    // } catch (e) {
    //   console.log(e);
    // }

    this.getBannerList();
    this.getNavList();
    this.getLikeGoodsList();
    this.getRecommendGoodsList();
  },

  // 获取猜你喜欢商品列表
  async getLikeGoodsList() {
    const likeGoodsList = await getLikeGoodsListApi();
    this.setData({
      likeGoodsList
    })
  },

  // 获取人气推荐商品列表
  async getRecommendGoodsList() {
    const recommendGoodsList = await getRecommendGoodsListApi();
    this.setData({
      recommendGoodsList
    })
  },

  // 获取首页轮播图列表
  async getBannerList() {
    const bannerList = await getBannerListApi();
    this.setData({
      bannerList: bannerList.sort((a, b) => a.sort - b.sort)
    })
  },

  // 获取首页导航分类列表
  async getNavList() {
    const navList = await getNavListApi();
    this.setData({
      navList
    })
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  // 分享功能
  // https://developers.weixin.qq.com/miniprogram/dev/reference/api/Page.html
  onShareAppMessage() {
    return {
      title: '同性交友',
      path: '/pages/home/home',
      imageUrl: './9.jpg'
    }
  },
  onShareTimeline() {
    return {
      title: '同性交友',
      imageUrl: './9.jpg'
    }
  }
})